//选择类型
function changePlanType(type) {
	if (type == "1") {
		$("#archiveType").attr("Value", "0");
		$("#selectTemp").combobox("setValue", 1);
		$("#tableLayer").combobox("setValue", 1);
		$("#selectTemp").combobox("readonly", true);
		$("#tableLayer").combobox("readonly", true);
		$("#addGridIframe").css("display", "none");
		$("#layerTypeSpan").hide();
		$("#layerType + .combo").hide();
		//获取div  
		var divwen = document.getElementById("commTempletsIdwen"); 
		var divan = document.getElementById("commTempletsIdan"); 
		divwen.innerHTML = "<div style=\"padding-left: 3px;\">件级：</div>";
		divan.innerHTML = "<div style=\"padding-left: 3px;\">卷级：</div>";
	} else {
		
		var tempTypeId = $("#selectTemp").combobox("getValue");
		$("#archiveType").attr("value", tempTypeId);
		$("#selectTemp").combobox("readonly", false);
		$("#tableLayer").combobox("readonly", false);
		
		var tempTypeId = $("#tableLayer").combobox("getValue");//几级库表
		if(tempTypeId == "1"){
			getArchiveClassType(tempTypeId,1);
		}else{
			getArchiveClassType(tempTypeId,2);
		}
	}
	
	
}

/**
 * 模版类型选择事件
 * 
 * @param record
 */
function onChangetArchiveType(newValue, oldValue) {
	if ("8" == newValue || "9" == newValue) {
		// 只能一层
		$("#tableLayer").combobox("setValue", 1);
		// 禁用
		$('#tableLayer').combo('readonly', true);
	} else {
		// 启用
		$('#tableLayer').combo('readonly', false);
	}
	var tempTypeId = $("#tableLayer").combobox("getValue");//几级库表
	if(tempTypeId == "1"){
		getArchiveClassType(newValue,1);
	}else{
		getArchiveClassType(newValue,1);
		getArchiveClassType(newValue,2);
	}
}

/**
 * 根据选择模板类型获取模板信息
 * 
 * @param record
 */
function getArchiveClassType(value,cengji) {
	$.ajax({
		url : 'platform/aos/commtempletmanagerController/getCommTempletByTempModelType',
		data : {
			tempModelType : value,
			sysId : "LANTOP"
		},
		type : 'post',
		dataType : 'json',
		success : function(result) {
			//清空文件级div  
            var divwen = document.getElementById("commTempletsIdwen");  
            divwen.innerHTML = "<div style=\"padding-left: 3px;\">件级：</div>";
            //清空案卷级div  
            var divan = document.getElementById("commTempletsIdan");  
            divan.innerHTML = "<div style=\"padding-left: 3px;\">卷级：</div>";
			var commTempletInfos = result.commTempletInfos;
			var tempTypeId = $("#tableLayer").combobox("getValue");//几级库表
			if(tempTypeId == "1"){
	            //获得选中的是模版文件夹还是模板库
	            var changePlanValue=$("input[name='redio']:checked").val();
	            if(changePlanValue == 2){//模板库
	            	for(var i=0;i<commTempletInfos.length;i++){
	            		var commTempletInfo = commTempletInfos[i];
	            		var tempName = commTempletInfo.TEMP_NAME;
	            		var tempId = commTempletInfo.ID;

						var divw = document.createElement("div");
						divw.setAttribute("class","divw");
	            		//添加text ，存放复选框
	            		var input = document.createElement("input");
	            		input.setAttribute('type', 'checkbox'); //设置类型
	            		input.setAttribute('name', 'tempNamewen');  //存放name 
	            		input.setAttribute('value', tempId);  //存放ID 
	            		// input.setAttribute("checked","checked"); //设置选中
	            		// input.setAttribute("style","margin-left: 8px;"); //右边距
						divw.appendChild(input);
						// divwen.appendChild(input);
	            		
	            		//添加label ，存放模板名称 
	            		var div2 = document.createElement("label");  
	            		div2.innerText = tempName;  
	            		// div2.setAttribute("style","margin-left: 1px;"); //右边距
						// div2.setAttribute("style","margin-right: 30px;"); //左边距
	            		// divwen.appendChild(div2);
	            		divw.appendChild(div2);
						divwen.appendChild(divw);
					}
	            }
			}else{
	            //获得选中的是模版文件夹还是模板库
	            var changePlanValue=$("input[name='redio']:checked").val();
	            if(changePlanValue == 2){//模板库
	            	for(var i=0;i<commTempletInfos.length;i++){
	            		var commTempletInfo = commTempletInfos[i];
	            		var tempName = commTempletInfo.TEMP_NAME;
	            		var tempId = commTempletInfo.ID;
	            		//拼接文件级区域
						var divw = document.createElement("div");
						divw.setAttribute("class","divw");
	            		//添加text ，存放复选框 
	            		var inputwen = document.createElement("input");  
	            		inputwen.setAttribute('type', 'checkbox'); //设置类型
	            		inputwen.setAttribute('name', 'tempNamewen');  //存放name 
	            		inputwen.setAttribute('value', tempId);  //存放ID 
	            		// inputwen.setAttribute("checked","checked"); //设置选中
	            		// inputwen.setAttribute("style","margin-left: 8px;"); //右边距
	            		// divwen.appendChild(inputwen);
	            		divw.appendChild(inputwen);

	            		//添加label ，存放模板名称 
	            		var div1 = document.createElement("label");  
	            		div1.innerText = tempName;  
	            		// div1.setAttribute("style","margin-left: 1px;"); //右边距
	            		// divwen.appendChild(div1);
						divw.appendChild(div1);
	            		divwen.appendChild(divw);

	            		//拼接案卷级区域
						var divw2 = document.createElement("div");
						divw2.setAttribute("class","divw");
	            		//添加text ，存放复选框 
	            		var inputan = document.createElement("input");  
	            		inputan.setAttribute('type', 'checkbox'); //设置类型
	            		inputan.setAttribute('name', 'tempNamean');  //存放name 
	            		inputan.setAttribute('value', tempId);  //存放ID 
	            		// inputan.setAttribute("checked","checked"); //设置选中
	            		// inputan.setAttribute("style","margin-left: 8px;"); //右边距
	            		// divan.appendChild(inputan);
	            		divw2.appendChild(inputan);

	            		//添加label ，存放模板名称 
	            		var div2 = document.createElement("label");  
	            		div2.innerText = tempName;  
	            		// div2.setAttribute("style","margin-left: 1px;"); //右边距
	            		divw2.appendChild(div2);
	            		divan.appendChild(divw2);
	            	}
	            }
			}
		}
	});
}


// 获取标识
function nameOnChange(value) {
	$.ajax({
		url : 'platform/LantopArchiveClassController/getValueByName',
		data : {
			name : value
		},
		type : 'post',
		dataType : 'json',
		success : function(result) {
			if (result.flag == "success") {
				$("#archiveClassNodeCode").attr("value",
						result.value.toUpperCase());
			} else {
				$.messager.show({
					title : '提示',
					msg : "请求数据失败",
					timeout : 2000,
					showType : 'slide'
				});
			}
		}
	});
}
// 保存
function saveForm() {
	var names = "";
	if ($("#archiveType").val() == "0") {
		names = "";
	} else {
		if ($("#tableLayer").combobox("getValue") == "3") {
			var flag = checkCount();
			if (flag) {
				// 获取grid names串
				names = getGridNames();
			} else {
				$.messager.alert("操作提示", "请检查名称记录！", "warning");
				return false;
			}
		} else {
			names = "";
		}
	}
	var validateFlag = $('#formAdd').form('validate');
	$.extend($.fn.validatebox.defaults.rules, {
		xy: {
	        validator: function(value,param){
	        	var jiedianName = $("#archiveClassNodeName").val();
	        	var regEn = /[`~!@$%^&*()+<>?:"{},.\;'[\]]/im,
	            regCn = /[·！￥：；“”‘，|《。》？\\\\【】[\]]/im;
	        	if(regEn.test(jiedianName) || regCn.test(jiedianName)) {
	        		return false;
	        	}else{
	        		return true;
	        	}   
	        },    
	        message: '名称不能含有特殊字符'  
	    }
	});
	// 校验
	if (validateFlag == false) {
		return;
	}
	var namePattern = /^(?!_)[\u4E00-\u9FA5a-zA-Z0-9_]+$/;
	var name = $("#archiveClassNodeName").val();//获取名称
	
	/*if (!name.match(namePattern)) {
		$.messager.show({
			title : '提示',
			msg : '【名称】只能包含汉字、字母、数字、下划线且不能以下划线开头！',
			timeout : 2000,
			showType : 'slide'
		});
		return;
	}*///名字验证去掉
	
	// add by gl 2015-12-28 表单输入由数字，字母，下划线组成，且下划线不能开头 start
	var code = $("#archiveClassNodeCode").val(); // 标识
	var pattern = /^(?!_)[a-zA-Z0-9_]+$/;
	if (!code.match(pattern)) {
		$.messager.show({
			title : '提示',
			msg : '【标识】只能包含字母、数字、下划线且不能以下划线开头！',
			timeout : 2000,
			showType : 'slide'
		});
		return;
	}
	// add by gl 2015-12-28 表单输入由数字，字母，下划线组成，且下划线不能开头 end
	// 专题可以类型不能添加一级表结构 add by gl 2016-06-16 start
	var archiveType = $("#archiveType").val();
	var tableLayer = $("#tableLayer").combobox("getValue");
	if("3" == archiveType && "1" == tableLayer){
		$.messager.show({
			title : '提示',
			msg : '专题库不能创建1级表结构！',
			timeout : 2000,
			showType : 'slide'
		});
		return;
	}
	// 专题可以类型不能添加一级表结构 add by gl 2016-06-16 end
	MaskUtil.mask();
	var dataVo = $('#formAdd').serializeArray();
	var layerType = $('#layerType').combobox("getValue");
	var dataJson = convertToJson(dataVo);
	dataVo = JSON.stringify(dataJson);
	//选中的模板ID集合 以，分割
	var tempwenIds = $('input:checkbox[name="tempNamewen"]:checked').map(function () {
        return $(this).val();
    }).get().join(",");
	var tempanIds = $('input:checkbox[name="tempNamean"]:checked').map(function () {
        return $(this).val();
    }).get().join(",");
	// 保存
	$.ajax({
		url : 'platform/LantopArchiveClassController/saveAdd',
		data : {
			datas : dataVo,
			names : names,
			layerType : layerType,
			tempwenIds : tempwenIds,
			tempanIds : tempanIds
		},
		type : 'post',
		dataType : 'json',
		success : function(result) {
			if (result.flag == "success") {
				var node = parent.$('#classTree').tree('getSelected');

				if (node) {
					// 如果当前节点不为展开状态
					if (node.state == "closed") {
						parent.$('#classTree').tree('reload', node.target);
					} else {
						parent.$('#classTree').tree('append', {
							parent : node.target,
							data : result.node
						});
					}
				}
				MaskUtil.unmask();
				parent.$.messager.show({
					title : '提示',
					msg : "保存成功。"
				});
				parent.loadDemoTree();
				closeForm();
			} else {
				$.messager.show({
					title : '提示',
					msg : result.mes,
					timeout : 2000,
					showType : 'slide'
				});
				MaskUtil.unmask();
			}
		}
	});
}

function closeForm() {
	if (parent != null && parent.$('#' + dialogId) != null) {
		parent.$('#' + dialogId).dialog('close');// 关闭当前窗口
	}
}

window.onresize = comboboxHidePanel;

var editIndex = undefined;
// 验证空格
String.prototype.trim = function() {
	return this.replace(/(^\s*)|(\s*$)/g, "");
}
// 行验证
function endEditing() {
	if (editIndex == undefined) {
		return true
	}
	if ($('#classGrid').datagrid('validateRow', editIndex)) {
		$('#classGrid').datagrid('beginEdit', editIndex);
		var ed = $('#classGrid').datagrid('getEditor', {
			index : editIndex,
			field : 'name'
		});

		var name = $(ed.target).val();
		// 如果为空不允许继续添加
		if (name.trim().length == 0) {
			parent.$.messager.alert("操作提示", "名称不能为空！", "warning");
			return false;
		}

		$('#classGrid').datagrid('getRows')[editIndex]['name'] = name;
		$('#classGrid').datagrid('unselectRow', editIndex);
		$('#classGrid').datagrid('endEdit', editIndex);
		editIndex = undefined;
		return true;
	} else {
		return false;
	}
}
// 点击行
function onClickRow(index) {
	if (editIndex != index) {
		if (endEditing()) {
			$('#classGrid').datagrid('selectRow', index).datagrid('beginEdit',
					index);
			editIndex = index;
		} else {
			$('#classGrid').datagrid('selectRow', editIndex);
		}
	}
}
// 添加
function append() {
	if (endEditing()) {
		$('#classGrid').datagrid('appendRow', {});
		editIndex = $('#classGrid').datagrid('getRows').length - 1;
		$('#classGrid').datagrid('selectRow', editIndex).datagrid('beginEdit',
				editIndex);
	}
}
// 删除
function removeit() {
	var rows = $('#classGrid').datagrid('getSelections');
	for ( var i = 0; i < rows.length; i++) {
		var index = $('#classGrid').datagrid('getRowIndex', rows[i]);// 获取某行的行号
		$('#classGrid').datagrid('deleteRow', index); // 通过行号移除该行
	}
	editIndex = undefined;
}

// 父页面保存时，获取grid name串
function getGridNames() {

	var rows = $('#classGrid').datagrid('getRows');
	var names = "";
	if (rows.length > 0) {
		$('#classGrid').datagrid('acceptChanges');
		for ( var i = 0; i < rows.length; i++) {
			// 如果名称为空
			if (rows[i].name.trim().length == 0) {
				parent.$.messager.alert("操作提示", "名称不能为空！", "warning");
				var rowIndex = $('#classGrid').datagrid('getRowIndex', rows[i]);
				$('#classGrid').datagrid('beginEdit', rowIndex);
				return false;
			}
			names += rows[i].name.trim() + ";";
		}
		names = names.substr(0, names.length - 1);
	}
	return names;
}
// 记录数
function checkCount() {
	var falg = true;
	var gridDatas = $('#classGrid').datagrid('getRows');
	var length = gridDatas.length;
	if (length == 3) {
		for ( var i = 0; i < length; i++) {
			if (!$('#classGrid').datagrid('validateRow', i)) {
				falg = false;
			}
		}
	} else {
		falg = false;
	}
	return falg;
}
